\documentclass[10pt, titlepage]{article}

\usepackage[UTF8]{ctex}
\usepackage{url}
\usepackage[hidelinks]{hyperref}
\usepackage{graphicx}
\usepackage{bm}
\usepackage{amsmath}

\author{eleve11}
\title{奇异值分解}

\begin{document}
\maketitle

\section{奇异值分解定理}
\newtheorem{thm}{定理}  % 在局部定义的，可放导言区
\begin{thm}
    令$\bm{A} \in \Re ^{m \times n}$(或$\bm{C} \in \Re ^{m \times n}$)，则存在正
    交矩阵(或酉矩阵)$\bm{U} \in \Re ^{m \times m}$(或
    $\bm{C} \in \Re ^{m \times m}$)和$\bm{V} \in \Re ^{n \times n}$(或
    $\bm{C} \in \Re ^{n \times n}$)使得
    \begin{displaymath}
        \bm{A}=\bm{U}\bm{\Sigma}\bm{V}^T(\bm{U}\bm{\Sigma}\bm{V}^H)
    \end{displaymath}
    式中$\Sigma=\begin{bmatrix}
      \Sigma _1 & 0 \\
      0 & 0
    \end{bmatrix}$，且$\Sigma _1 = diag(\sigma _1, \ldots, \sigma _r)$，其对角元素
    按照由大到小顺序排列。
\end{thm}
\indent 对角矩阵$diag(\sigma _1, \ldots, \sigma _m)$对角线上的值称为矩阵$\bm{A}$的
奇异值。

\section{SVD的几何意义}
奇异值分解最早是Beltrami于1873年提出的对实方阵提出来的。最后到1939年被推广至复长方形矩
阵。\\
\indent 来看以下几张图(来自\cite{b})，一般来说对矩阵旋转或者拉升，依旧是在一个正交的格子
中，但是如图\ref{fig:shear1}shear操作后得到的便不是正交的格子。 \\
\begin{figure}[ht]
\centering
\includegraphics[scale=0.5]{figs/shear1.png}
\caption{shear操作}
\label{fig:shear1}
\end{figure}
\begin{figure}[ht]
\centering
\includegraphics[scale=0.5]{figs/rotateshear.png}
\caption{旋转$30^\circ$，在进行shear操作}
\label{fig:rotateshear}
\end{figure}
\begin{figure}[ht]
\centering
\includegraphics[scale=0.5]{figs/rotateshear1.png}
\caption{旋转$60^\circ$，在进行shear操作}
\label{fig:rotateshear1}
\end{figure}
\indent 图\ref{fig:shear1}中线性变化如下(被称为shear操作)，此处写的啰嗦了，个人习惯将单
位矩阵(初始的基向量)加入到运算，任何线性变化都是从单位矩阵的基向量出发的。\\
\begin{displaymath}
    \begin{bmatrix}
      1 & 1 \\
      0 & 1
    \end{bmatrix} \begin{bmatrix}
      1 & 0 \\
      0 & 1
    \end{bmatrix} \Longrightarrow \begin{bmatrix}
      1 & 1 \\
      0 & 1
    \end{bmatrix}
\end{displaymath}
\indent 图\ref{fig:rotateshear}中的线性变化如下(先旋转$30^\circ$在shear操作)，省略了
单位矩阵。 \\
\begin{displaymath}
    \begin{bmatrix}
      1 & 1 \\
      0 & 1
    \end{bmatrix} \begin{bmatrix}
      \frac{\sqrt{3}}{2} & -\frac{1}{2} \\
      \frac{1}{2} & \frac{\sqrt{3}}{2}
    \end{bmatrix} \Longrightarrow \begin{bmatrix}
      \frac{\sqrt{3}+1}{2} & \frac{\sqrt{3}-1}{2} \\
      \frac{1}{2} & \frac{\sqrt{3}}{2}
    \end{bmatrix}
\end{displaymath}
\indent 似乎以上没什么特别，但是旋转到$60^\circ$时，就发现了似乎shear之后两个向量似乎正交
了，回到线性变化如下。 \\
\begin{displaymath}
  \begin{bmatrix}
    1 & 1 \\
    0 & 1
  \end{bmatrix} \begin{bmatrix}
    \frac{1}{2} & -\frac{\sqrt{3}}{2} \\
    \frac{\sqrt{3}}{2} & \frac{1}{2}
  \end{bmatrix} \Longrightarrow \begin{bmatrix}
    \frac{\sqrt{3}+1}{2} & \frac{1-\sqrt{3}}{2} \\
    \frac{\sqrt{3}}{2} & \frac{1}{2}
  \end{bmatrix}
\end{displaymath}
\indent 将得到的两个向量进行点积。 \\
\begin{displaymath}
  \begin{bmatrix}
    \frac{\sqrt{3}+1}{2} \\
    \frac{\sqrt{3}}{2}
  \end{bmatrix} \cdot \begin{bmatrix}
    \frac{1-\sqrt{3}}{2} \\
    \frac{1}{2}
  \end{bmatrix} = \frac{\sqrt{3}-2}{4} < 0
\end{displaymath}
\indent 事实上并不正交，其实旋转到$58.28^\circ$再进行shear操作得到的矩阵为正交矩阵。
从以上可知存在两个单位正交向量$\overrightarrow{v_1}$和$\overrightarrow{v_2}$，通过矩
阵$\bm{A}$得到的两个向量(分别由单位正交向量$\overrightarrow{u_1}$和$\overrightarrow{u_2}$表示)也正交。\\
\begin{displaymath}
  A \overrightarrow{v_1} = \sigma _1 \overrightarrow{u_1}, \qquad
  A \overrightarrow{v_2} = \sigma _2 \overrightarrow{u_2}
\end{displaymath}
\indent 那么矩阵$\bm{A}$如何处理一般向量$\overrightarrow{x}$？$\overrightarrow{x}$
向量在以$\overrightarrow{v_1}$和$\overrightarrow{v_2}$为基向量的空间中的表示如下：
\begin{displaymath}
  \overrightarrow{x} = (\overrightarrow{v_1} \cdot \overrightarrow{x})
  \overrightarrow{v_1} + (\overrightarrow{v_2} \cdot \overrightarrow{x})
  \overrightarrow{v_2}
\end{displaymath}
也即：
\begin{displaymath}
  A\overrightarrow{x} = (\overrightarrow{v_1} \cdot \overrightarrow{x})A
  \overrightarrow{v_1} + (\overrightarrow{v_2} \cdot \overrightarrow{x})A
  \overrightarrow{v_2}
\end{displaymath}
\begin{displaymath}
  A\overrightarrow{x} = (\overrightarrow{v_1} \cdot \overrightarrow{x}) \sigma
  \overrightarrow{u_1} + (\overrightarrow{v_2} \cdot \overrightarrow{x})\sigma
  \overrightarrow{u_2}
\end{displaymath}
因为向量的点积公式可知：
\begin{displaymath}
  \overrightarrow{v_1} \cdot \overrightarrow{x} = \overrightarrow{v_1}^T
  \overrightarrow{x}
\end{displaymath}
可得：
\begin{displaymath}
  A\overrightarrow{x} = \overrightarrow{u_1} \sigma _1 \overrightarrow{v_1}^T
  \overrightarrow{x} + \overrightarrow{u_2} \sigma _1 \overrightarrow{v_2}^T
  \overrightarrow{x}
\end{displaymath}
\begin{displaymath}
  A = \overrightarrow{u_1} \sigma _1 \overrightarrow{v_1}^T
  + \overrightarrow{u_2} \sigma _1 \overrightarrow{v_2}^T
\end{displaymath}
写为矩阵形式：
\begin{displaymath}
  A = U \Sigma V^T
\end{displaymath}
任意的矩阵$\bm{A}$是可以分解成三个矩阵，$\bm{V}$表示了原始域的标准正交基，$\bm{U}$表示经过
$\bm{A}$变换后的新标准正交基，$\bm{\Sigma}$表示了$\bm{V}$中的向量与$\bm{U}$中相对应向量
之间的比例(伸缩)关系。
\begin{figure}[ht]
\centering
\includegraphics[scale=0.5]{figs/trans.png}
\caption{矩阵A处理一般向量x过程}
\label{fig:trans}
\end{figure}


\section{如何进行奇异值分解}
由$A = U \Sigma V^T$来进行求解我们的答案。$\overrightarrow{v}$是矩阵$A^T A$的特征向
量，$\overrightarrow{u}$是矩阵$AA^T$的特征向量。
\begin{displaymath}
    A^T A = V \Sigma ^T U^T U \Sigma V^T = V \Sigma ^T \Sigma V^T
\end{displaymath}
\begin{displaymath}
    AA^T = U \Sigma ^T V^T V \Sigma U^T = U \Sigma ^T \Sigma U^T
\end{displaymath}
因为$A = U \Sigma V^T$，$\bm{V}$为对称矩阵$\bm{A^T A}$的特征矩阵，可得
$AV = U \Sigma$
\begin{displaymath}
  AV = U \Sigma \longrightarrow A \overrightarrow{v_i} = \sigma _i \overrightarrow{u_i} \longrightarrow \sigma _i = \frac{A\overrightarrow{v_i}}{\overrightarrow{u_i}}
\end{displaymath}
当然$\sigma$的求解可以从$A^T A = V \Sigma ^T \Sigma V^T$入手，即奇异值$\sigma$可以由
$A^T A$的特征值的开方求得。


\newpage
\begin{thebibliography}{99}
    \bibitem{b} AMS. http://www.ams.org/publicoutreach/feature-column/fcarc-svd
		\bibitem{ba} 张贤达. 矩阵分析与应用 (2013)
    \bibitem{bb} G.Strang. Introduction to Linear algebra (2016)
\end{thebibliography}
\end{document}
